package com.ruoyi.web.domain;

import java.math.BigDecimal;
import java.util.Date;
import com.fasterxml.jackson.annotation.JsonFormat;
import org.apache.commons.lang3.builder.ToStringBuilder;
import org.apache.commons.lang3.builder.ToStringStyle;
import com.ruoyi.common.core.annotation.Excel;
import com.ruoyi.common.core.web.domain.BaseEntity;

/**
 * 股票实时快照对象 gu_mr_stock_snapshot
 * 
 * @author ruoyi
 * @date 2025-10-24
 */
public class GuMrStockSnapshot extends BaseEntity
{
    private static final long serialVersionUID = 1L;

    /**  */
    private String id;

    /** 股票代码 */
    @Excel(name = "股票代码")
    private String dm;

    /** 最新价 */
    @Excel(name = "最新价")
    private BigDecimal p;

    /** 开盘价 */
    @Excel(name = "开盘价")
    private BigDecimal o;

    /** 最高价 */
    @Excel(name = "最高价")
    private BigDecimal h;

    /** 最低价 */
    @Excel(name = "最低价")
    private BigDecimal l;

    /** 前收盘价 */
    @Excel(name = "前收盘价")
    private BigDecimal yc;

    /** 成交总额（元） */
    @Excel(name = "成交总额", readConverterExp = "元=")
    private BigDecimal cje;

    /** 成交总量（股） */
    @Excel(name = "成交总量", readConverterExp = "股=")
    private Long v;

    /** 原始成交总量（股） */
    @Excel(name = "原始成交总量", readConverterExp = "股=")
    private Long pv;

    /** 涨跌额 */
    @Excel(name = "涨跌额")
    private BigDecimal ud;

    /** 涨跌幅% */
    @Excel(name = "涨跌幅%")
    private BigDecimal pc;

    /** 振幅% */
    @Excel(name = "振幅%")
    private BigDecimal zf;

    /** 更新时间 */
    @JsonFormat(pattern = "yyyy-MM-dd")
    @Excel(name = "更新时间", width = 30, dateFormat = "yyyy-MM-dd")
    private Date t;

    /** 市盈率 */
    @Excel(name = "市盈率")
    private BigDecimal pe;

    /** 换手率% */
    @Excel(name = "换手率%")
    private BigDecimal tr;

    /** 市净率 */
    @Excel(name = "市净率")
    private BigDecimal pbRatio;

    /** 成交量（手） */
    @Excel(name = "成交量", readConverterExp = "手=")
    private Long tv;

    public void setId(String id) 
    {
        this.id = id;
    }

    public String getId() 
    {
        return id;
    }

    public void setDm(String dm) 
    {
        this.dm = dm;
    }

    public String getDm() 
    {
        return dm;
    }

    public void setP(BigDecimal p) 
    {
        this.p = p;
    }

    public BigDecimal getP() 
    {
        return p;
    }

    public void setO(BigDecimal o) 
    {
        this.o = o;
    }

    public BigDecimal getO() 
    {
        return o;
    }

    public void setH(BigDecimal h) 
    {
        this.h = h;
    }

    public BigDecimal getH() 
    {
        return h;
    }

    public void setL(BigDecimal l) 
    {
        this.l = l;
    }

    public BigDecimal getL() 
    {
        return l;
    }

    public void setYc(BigDecimal yc) 
    {
        this.yc = yc;
    }

    public BigDecimal getYc() 
    {
        return yc;
    }

    public void setCje(BigDecimal cje) 
    {
        this.cje = cje;
    }

    public BigDecimal getCje() 
    {
        return cje;
    }

    public void setV(Long v) 
    {
        this.v = v;
    }

    public Long getV() 
    {
        return v;
    }

    public void setPv(Long pv) 
    {
        this.pv = pv;
    }

    public Long getPv() 
    {
        return pv;
    }

    public void setUd(BigDecimal ud) 
    {
        this.ud = ud;
    }

    public BigDecimal getUd() 
    {
        return ud;
    }

    public void setPc(BigDecimal pc) 
    {
        this.pc = pc;
    }

    public BigDecimal getPc() 
    {
        return pc;
    }

    public void setZf(BigDecimal zf) 
    {
        this.zf = zf;
    }

    public BigDecimal getZf() 
    {
        return zf;
    }

    public void setT(Date t) 
    {
        this.t = t;
    }

    public Date getT() 
    {
        return t;
    }

    public void setPe(BigDecimal pe) 
    {
        this.pe = pe;
    }

    public BigDecimal getPe() 
    {
        return pe;
    }

    public void setTr(BigDecimal tr) 
    {
        this.tr = tr;
    }

    public BigDecimal getTr() 
    {
        return tr;
    }

    public void setPbRatio(BigDecimal pbRatio) 
    {
        this.pbRatio = pbRatio;
    }

    public BigDecimal getPbRatio() 
    {
        return pbRatio;
    }

    public void setTv(Long tv) 
    {
        this.tv = tv;
    }

    public Long getTv() 
    {
        return tv;
    }

    @Override
    public String toString() {
        return new ToStringBuilder(this,ToStringStyle.MULTI_LINE_STYLE)
            .append("id", getId())
            .append("dm", getDm())
            .append("p", getP())
            .append("o", getO())
            .append("h", getH())
            .append("l", getL())
            .append("yc", getYc())
            .append("cje", getCje())
            .append("v", getV())
            .append("pv", getPv())
            .append("ud", getUd())
            .append("pc", getPc())
            .append("zf", getZf())
            .append("t", getT())
            .append("pe", getPe())
            .append("tr", getTr())
            .append("pbRatio", getPbRatio())
            .append("tv", getTv())
            .append("createTime", getCreateTime())
            .append("updateBy", getUpdateBy())
            .append("updateTime", getUpdateTime())
            .append("remark", getRemark())
            .append("createBy", getCreateBy())
            .toString();
    }
}
